The popularity of smartphones, 3G/4G devices, tablets and other advanced mobile devices surged in the world. Together with widespread cellular networks and WiFi access, mobile devices have brought rich mobile applications to users. However, the resource-limited nature of mobile devices has hindered further developments for mobile services.
To improve mobile applications and services, various solutions based on offloading tasks to the powerful cloud have been proposed. Rather than conducting all operations locally, the cloud takes advantage of the abundant resources to provide better services (store, process) for mobile devices. Therefore, mobile applications determine some computational-intensive or energy-consuming tasks or methods to be sent to the cloud for processing.
Among many performance metrics to the quality of services of applications, application delay is especially interesting. Intuitively, users always desire online services with delay being as short as possible. Due to the best-effort nature of the Internet, it is very difficult and expensive to provide hard delay guarantees for applications. Therefore, to provide a soft delay guaranteed service has attracted attention for researchers and commercial companies. A soft delay guarantee makes a best-effort attempt to achieve a delay goal. Recent work (Ravindranath, Lenin and Padhye, Jitendra and Mahajan, Ratul and Balakrishnan, Hari: Timecard: controlling user-perceived delays in server-based mobile applications, Proceedings of SOSP, 2013) proposed a method to provide a soft delay guarantee. Ravindranath et al. measure the elapsed time and predict the application delay. With the predicted delay, the system makes a best-effort attempt to control the delay close to a somehow predetermined desired delay by adjusting the allocated resource in the cloud. U.S. 2013/0138798 A1 relates to a cloud computing environment, and, in particular, to determine and monitor quality of resources available for provisioning to the cloud computing environment.